# Source files for the library: should be more or less the same as the
# variable OBJ in the Makefile, with two changes:
# - sll_kinds.F90 should be used instead of mod_kinds.f90 to make sure
#   that the same kind type parameters as in SeLaLib are used
# - sll_mpi_utils.F90 should be used as MPI entry point, so that all
#   the calls go through the corresponding SeLaLib module.
#
# TODO see how to include the module mod_omp_utils.f90, which should
# be included only when compiling with OpenMP enabled.
SET( fml_utils_SRC 
  mod_eigen.f90
  mod_fu_manager.f90
  mod_interp1d.f90
  mod_linal.f90
  mod_messages.f90
  mod_numquad.f90
  mod_octave_io.f90
  mod_octave_io_perms.f90
  mod_octave_io_sparse.f90
  mod_octave_io_sympoly.f90
  mod_output_control.f90
  mod_perms.f90
  mod_sparse.f90
  mod_state_vars.f90
  mod_symmon.f90
  mod_sympoly.f90
  mod_utils.f90
  sll_kinds.F90
  sll_mpi_utils.F90 )

ADD_LIBRARY( fml_general_utilities STATIC ${fml_utils_SRC} )

TARGET_LINK_LIBRARIES( fml_general_utilities 
  sll_working_precision sll_collective )

# TODO add eigen-test executable

# TODO add a unit test

